
#ifdef a
//memset陷阱
#include<iostream>
using namespace std;
int main() {
	int arr[10];//40 bite
	//memset按照字节拷贝
	memset(arr, 5, sizeof(arr));//05
	memset(arr, 0x11111152, sizeof(arr));//52
	memset(arr, 'a', sizeof(arr));//61
	//陷阱1：最后一个参数是要拷贝的总字节数，而不是元素个数
	//陷阱2：int类型4个字节，每个字节拷贝为5，则每一个元素为05050505（十六进制）
	//void* memset(void* ptr, int value, size_t num);
	//从ptr的第一个字节开始，将每一个字节都以value覆盖之，若value大于1个字节，则只取第一个字节（最低位）
	char arr1[] = "abcdefghijklopqrstuvwxyz";
	memset(arr1, 4, 5);//'\x4'
	memset(arr1, 'a', 5);//'a'
	//void* 原来为什么类型，则覆盖后以什么类型显示，如memset（int* , char）,显示的就是int类型，即ascll
	//若是memset(char*,int),则显示的就是char字符类型
	return 0;
}
#endif
